package com.dkts.oil.postgis;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class PostgresConnectionUtil {

    // 数据库连接信息（请根据你的实际信息修改）
    private static final String URL = "jdbc:postgresql://49.233.72.115:15432/postgis?ssl=false&charSet=UTF8";
    private static final String USER = "postgres";     // 修改为你的数据库用户名
    private static final String PASSWORD = "postgres..2025"; // 修改为你的数据库密码

    static {
        try {
            // 加载 PostgreSQL 驱动
            Class.forName("org.postgresql.Driver");
        } catch (ClassNotFoundException e) {
            throw new RuntimeException("PostgreSQL JDBC Driver 未找到", e);
        }
    }

    /**
     * 获取数据库连接
     *
     * @return 数据库连接对象
     * @throws SQLException 如果连接失败
     */
    public static Connection getConnection() throws SQLException {
        return DriverManager.getConnection(URL, USER, PASSWORD);
    }

    /**
     * 安全关闭数据库连接
     *
     * @param conn Connection 实例
     */
    public static void close(Connection conn) {
        if (conn != null) {
            try {
                conn.close();
            } catch (SQLException ex) {
                System.err.println("关闭连接失败：" + ex.getMessage());
            }
        }
    }

    // 测试连接用 main 方法
    public static void main(String[] args) {
        try (Connection conn = getConnection()) {
            System.out.println("✅ 成功连接到 PostgreSQL 数据库！");
        } catch (SQLException e) {
            System.err.println("❌ 数据库连接失败: " + e.getMessage());
        }
    }
}
